<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // promise API

        // 1. 链式操作中的异常捕获使用catch
        new Promise((res, rej) => {
                // res('ok')
                rej('err')
            }).then(val => {
                console.log(val);
            }, rea => {
                console.log(rea); //err
                return undefined
            }).then(val => {
                console.log(val); //undefined
                return undefined;
            }).catch(rea => {
                console.log(rea);
            }).then(val => {
                console.log(val);
            })
            // 1.1 创建promise对象
            // 1.2 调用then方法
            // 1.3 resolve方法内打印成功结果值
            // 1.4 return 一个新的值
            // 1.5 继续调用then方法
            // ...
            // 1.6 调用catch方法
            // 定义reject回调

        // 1.7 在过程中添加一个 throw 错误抛出
    </script>
</body>

</html>